package com.zxy.ziems.server.board.service;

import com.zxy.ziems.server.board.pojo.vo.CurMonthChangeDosageVo;
import com.zxy.ziems.server.board.pojo.vo.DeviceStatusVo;
import com.zxy.ziems.server.board.pojo.vo.DosageVo;
import com.zxy.ziems.server.board.pojo.vo.EnergyVo;
import com.zxy.ziems.server.constant.enums.DictCodeEnum;
import com.zxy.ziems.server.vo.ChartVo;

import java.util.List;
import java.util.Map;

public interface EntiretyBoardService {
    /**
     * 获取当月分类变化
     * @return
     */
    CurMonthChangeDosageVo getCurMonth();

    /**
     * 上月耗电和用水统计
     * @return
     */
    Map<String, List<DosageVo>> lastMonthElectricityAndWater();

    /**
     * 上月燃气用量
     * @return
     */
    ChartVo lastMonthGas();

    /**
     * 设备状态
     * @param deviceIds 设备ID集
     * @return
     */
    List<DeviceStatusVo> deviceStatus(List<String> deviceIds);

    /**
     * 设备状态
     * @param dictCodeEnum 设备ID集
     * @return
     */
    List<DeviceStatusVo> deviceStatus(DictCodeEnum dictCodeEnum);

    /**
     * 能源统计
     * @return
     */
    EnergyVo energyStatistics();
}
